package com.ruoyi.iot.service;


import com.ruoyi.iot.domain.IotRulesTrigger;

import java.util.List;

/**
 * 规则触发器Service接口
 *
 * @author ruoyi
 * @date 2025-03-28
 */
public interface IIotRulesTriggerService {
    /**
     * 查询规则触发器
     *
     * @param triggerId 规则触发器主键
     * @return 规则触发器
     */
    IotRulesTrigger selectIotRulesTriggerByTriggerId(Long triggerId);

    /**
     * 查询规则触发器列表
     *
     * @param iotRulesTrigger 规则触发器
     * @return 规则触发器集合
     */
    List<IotRulesTrigger> selectIotRulesTriggerList(IotRulesTrigger iotRulesTrigger);

    /**
     * 新增规则触发器
     *
     * @param iotRulesTrigger 规则触发器
     * @return 结果
     */
    int insertIotRulesTrigger(IotRulesTrigger iotRulesTrigger);

    /**
     * 修改规则触发器
     *
     * @param iotRulesTrigger 规则触发器
     * @return 结果
     */
    int updateIotRulesTrigger(IotRulesTrigger iotRulesTrigger);

    /**
     * 批量删除规则触发器
     *
     * @param triggerIds 需要删除的规则触发器主键集合
     * @return 结果
     */
    int deleteIotRulesTriggerByTriggerIds(Long[] triggerIds);

    /**
     * 删除规则触发器信息
     *
     * @param triggerId 规则触发器主键
     * @return 结果
     */
    int deleteIotRulesTriggerByTriggerId(Long triggerId);

    IotRulesTrigger selectIotRulesTriggerByRuleId(Long ruleId);

    String generateRuleSql(IotRulesTrigger iotRulesTrigger);
}
